//<script>
var comboMarca = Ext.create('Ext.form.ComboBox', {
    fieldLabel:'Marca',
    valueField: 'id',
    displayField: 'nombre',
    store: Ext.create('Ext.data.JsonStore',{
        proxy: {
            type:'ajax',
            actionMethods:{read:'POST'},
            api:{read: BASE_URL+'marcas/llenarCombo'},
            reader:{type: 'json',root: 'data',totalProperty: 'total',idProperty: 'productos'}
        },
        fields: ['id','nombre'],
        autoLoad:true
    }),readOnly:true,disabled:true
});

var comboCategoria = Ext.create('Ext.form.ComboBox', {
    fieldLabel:'Categoría',
    valueField: 'id',
    displayField: 'nombre',
    store: Ext.create('Ext.data.JsonStore',{
        proxy: {
            type:'ajax',
            actionMethods:{read:'POST'},
            api:{read: BASE_URL+'categorias/llenarCombo'},
            reader:{type: 'json',root: 'data',totalProperty: 'total',idProperty: 'productos'}
        },
        fields: ['id','nombre'],
        autoLoad:true
    }),readOnly:true,disabled:true
})

var textReferencia = Ext.create('Ext.form.field.Text', {fieldLabel: 'Referencia',readOnly:true,disabled:true});
var textAreaDescripcion = Ext.create('Ext.form.field.TextArea', {fieldLabel: 'Descripción',xtype: 'textareafield',grow: true,readOnly:true,disabled:true});

var precio = Ext.create('Ext.form.field.Number',{
    name:'precio',
    fieldLabel:'Precio de Venta',
    allowBlank: false,
    emptyText: 'Precio de Venta',
    minValue: 1,
    hideTrigger: true,
    keyNavEnabled: false,
    mouseWheelEnabled: false,
    decimalSeparator:'.'
});

var form = Ext.create('Ext.form.Panel', {
    url:BASE_PRODUCTO+'savePrecio',
    bodyStyle:'padding:5px 5px 0',
    width: 450,
    fieldDefaults: {
        msgTarget: 'side',
        labelWidth: 100
    },
    defaultType: 'textfield',
    defaults: {
        anchor: '100%'
    },
    items: [
        comboMarca,comboCategoria,textReferencia,textAreaDescripcion,
        precio//Precio de Venta
    ],
    buttons: [
        {
            text: 'Guardar',
            handler: function() {
                submitForm(
                    this.up('form'),
                    function(){
                        Ext.getCmp('<?php echo $gridPanelId?>').getStore().load();
                        formProductos.close();
                        formProductos.destroy();
                    }
                );
            }
        }
    ]
});

<?php
if(!empty($data)){
    echo "
        comboMarca.setValue($data->marca_id);
        comboCategoria.setValue($data->categoria_id);
        textReferencia.setValue('$data->referencia');
        textAreaDescripcion.setValue('$data->descripcion');
        form.add(Ext.create('Ext.form.field.Hidden', {name: 'producto_id',value:$data->id}));
    ";
}
?>

var formProductos = Ext.create('Ext.Window', {
    title: 'Agregar Precio',
    layout: 'fit',
    modal: true,
    items:form
}).show();